--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
electron/crash.html v4.7.2-rc.5 (868d1d64) Text, 25.47 KB
Tff7b72<!doctype html>
Tb4b4b4<Tff7b72html Te6edf3langTff7b72=Ta5d6ff"en"Tb4b4b4>
Tb4b4b4<Tff7b72headTb4b4b4>
Tb4b4b4<Tff7b72meta Te6edf3charsetTff7b72=Ta5d6ff"UTF-8" Tb4b4b4/Tb4b4b4>
Tb4b4b4<Tff7b72meta
Te6edf3http-equivTff7b72=Ta5d6ff"Content-Security-Policy"
Te6edf3contentTff7b72=Ta5d6ff"default-src 'self'; script-src 'self' 'unsafe-inline' 'wasm-unsafe-eval' blob:; style-src 'self' 'unsafe-inline'; img-src 'self' data:;"
Tb4b4b4/Tb4b4b4>
Tb4b4b4<Tff7b72meta Te6edf3nameTff7b72=Ta5d6ff"viewport" Te6edf3contentTff7b72=Ta5d6ff"width=device-width, initial-scale=1, maximum-scale=1" Tb4b4b4/Tb4b4b4>
Tb4b4b4<Tff7b72titleTb4b4b4>MeshChatX - Crash ReportTb4b4b4<Tb4b4b4/Tff7b72titleTb4b4b4>
Tb4b4b4<Tff7b72script Te6edf3srcTff7b72=Ta5d6ff"./assets/js/tailwindcss/tailwind-v3.4.3-forms-v0.5.7.js"Tb4b4b4>Tb4b4b4<Tb4b4b4/Tff7b72scriptTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72headTb4b4b4>
Tb4b4b4<Tff7b72body
Te6edf3classTff7b72=Ta5d6ff"min-h-screen antialiased bg-gradient-to-b from-slate-100 to-slate-200 text-slate-800 dark:from-zinc-950 dark:to-zinc-900 dark:text-zinc-100 transition-colors"
Tb4b4b4>
Tb4b4b4<Tff7b72main Te6edf3classTff7b72=Ta5d6ff"flex min-h-screen items-center justify-center px-4 py-8 sm:px-6"Tb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3classTff7b72=Ta5d6ff"w-full max-w-4xl"Tb4b4b4>
Tb4b4b4<Tff7b72div
Te6edf3classTff7b72=Ta5d6ff"overflow-hidden rounded-2xl border border-slate-200/80 bg-white/90 shadow-lg shadow-slate-200/50 backdrop-blur-sm dark:border-zinc-700/80 dark:bg-zinc-900/90 dark:shadow-black/40"
Tb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3classTff7b72=Ta5d6ff"p-5 sm:p-6 space-y-5"Tb4b4b4>
Tb4b4b4<Tff7b72div
Te6edf3classTff7b72=Ta5d6ff"flex flex-col sm:flex-row items-center sm:items-start gap-3 text-center sm:text-left"
Tb4b4b4>
Tb4b4b4<Tff7b72div
Te6edf3classTff7b72=Ta5d6ff"flex h-12 w-12 shrink-0 items-center justify-center rounded-xl bg-red-100 ring-1 ring-red-200 dark:bg-red-950/40 dark:ring-red-900/60"
Tb4b4b4>
Tb4b4b4<Tff7b72svg
Te6edf3xmlnsTff7b72=Ta5d6ff"http://www.w3.org/2000/svg"
Te6edf3classTff7b72=Ta5d6ff"h-7 w-7 text-red-600 dark:text-red-400"
Te6edf3fillTff7b72=Ta5d6ff"none"
Te6edf3viewBoxTff7b72=Ta5d6ff"0 0 24 24"
Te6edf3strokeTff7b72=Ta5d6ff"currentColor"
Tb4b4b4>
Tb4b4b4<Tff7b72path
Te6edf3stroke-linecapTff7b72=Ta5d6ff"round"
Te6edf3stroke-linejoinTff7b72=Ta5d6ff"round"
Te6edf3stroke-widthTff7b72=Ta5d6ff"2"
Te6edf3dTff7b72=Ta5d6ff"M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"
Tb4b4b4/Tb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72svgTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3classTff7b72=Ta5d6ff"space-y-0.5"Tb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3classTff7b72=Ta5d6ff"text-xl font-semibold tracking-tight text-slate-900 dark:text-white"Tb4b4b4>
MeshChatX Crashed
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3classTff7b72=Ta5d6ff"text-xs text-slate-600 dark:text-zinc-400"Tb4b4b4>
The backend process exited unexpectedly.
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3classTff7b72=Ta5d6ff"grid grid-cols-1 sm:grid-cols-2 gap-3 text-sm"Tb4b4b4>
Tb4b4b4<Tff7b72div
Te6edf3classTff7b72=Ta5d6ff"rounded-xl border border-red-200/80 bg-red-50/70 p-3 dark:border-red-900/50 dark:bg-red-950/30 transition-colors"
Tb4b4b4>
Tb4b4b4<Tff7b72div
Te6edf3classTff7b72=Ta5d6ff"text-[10px] uppercase tracking-wide text-red-600 dark:text-red-400 font-semibold"
Tb4b4b4>
Exit Code
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tff7b72div
Te6edf3classTff7b72=Ta5d6ff"mt-0.5 text-base font-mono font-bold text-red-700 dark:text-red-300"
Te6edf3idTff7b72=Ta5d6ff"exit-code"
Tb4b4b4>
--
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tff7b72div
Te6edf3classTff7b72=Ta5d6ff"rounded-xl border border-slate-200/80 bg-slate-50/70 p-3 text-center sm:text-right dark:border-zinc-700/70 dark:bg-zinc-950/40 transition-colors"
Tb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3classTff7b72=Ta5d6ff"text-[10px] uppercase tracking-wide text-slate-500 dark:text-zinc-400"Tb4b4b4>
Status
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3classTff7b72=Ta5d6ff"mt-0.5 text-base font-semibold text-red-600 dark:text-red-400"Tb4b4b4>
Backend unavailable
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tff7b72p Te6edf3idTff7b72=Ta5d6ff"saved-log-path" Te6edf3classTff7b72=Ta5d6ff"break-all text-[10px] text-slate-600 dark:text-zinc-400 px-1"Tb4b4b4>Tb4b4b4<Tb4b4b4/Tff7b72pTb4b4b4>
Tb4b4b4<Tff7b72div
Te6edf3idTff7b72=Ta5d6ff"recovery-panel"
Te6edf3classTff7b72=Ta5d6ff"hidden rounded-xl border border-amber-200/80 bg-amber-50/70 p-4 space-y-3 dark:border-amber-900/50 dark:bg-amber-950/20"
Tb4b4b4>
Tb4b4b4<Tff7b72divTb4b4b4>
Tb4b4b4<Tff7b72div
Te6edf3classTff7b72=Ta5d6ff"text-[10px] font-semibold uppercase tracking-wider text-amber-800 dark:text-amber-300"
Tb4b4b4>
Recovery
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tff7b72p
Te6edf3idTff7b72=Ta5d6ff"recovery-summary"
Te6edf3classTff7b72=Ta5d6ff"mt-1 text-sm leading-relaxed text-amber-950 dark:text-amber-100"
Tb4b4b4>Tb4b4b4<Tb4b4b4/Tff7b72pTb4b4b4>
Tb4b4b4<Tff7b72ul
Te6edf3idTff7b72=Ta5d6ff"recovery-hints"
Te6edf3classTff7b72=Ta5d6ff"mt-2 list-disc space-y-1 pl-5 text-xs leading-relaxed text-amber-900 dark:text-amber-200"
Tb4b4b4>Tb4b4b4<Tb4b4b4/Tff7b72ulTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3idTff7b72=Ta5d6ff"backup-list" Te6edf3classTff7b72=Ta5d6ff"space-y-2"Tb4b4b4>Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3classTff7b72=Ta5d6ff"flex flex-wrap gap-2"Tb4b4b4>
Tb4b4b4<Tff7b72button
Te6edf3idTff7b72=Ta5d6ff"btn-restore-latest"
Te6edf3typeTff7b72=Ta5d6ff"button"
Te6edf3classTff7b72=Ta5d6ff"rounded-lg bg-emerald-600 px-3 py-1.5 text-[11px] font-semibold text-white hover:bg-emerald-500 disabled:opacity-50"
Tb4b4b4>
Restore latest backup
Tb4b4b4<Tb4b4b4/Tff7b72buttonTb4b4b4>
Tb4b4b4<Tff7b72button
Te6edf3idTff7b72=Ta5d6ff"btn-restore-picked"
Te6edf3typeTff7b72=Ta5d6ff"button"
Te6edf3classTff7b72=Ta5d6ff"rounded-lg border border-amber-300 bg-white px-3 py-1.5 text-[11px] font-semibold text-amber-900 hover:bg-amber-100 dark:border-amber-800 dark:bg-zinc-900 dark:text-amber-100 dark:hover:bg-zinc-800"
Tb4b4b4>
Choose backup file
Tb4b4b4<Tb4b4b4/Tff7b72buttonTb4b4b4>
Tb4b4b4<Tff7b72button
Te6edf3idTff7b72=Ta5d6ff"btn-auto-repair"
Te6edf3typeTff7b72=Ta5d6ff"button"
Te6edf3classTff7b72=Ta5d6ff"rounded-lg border border-amber-300 bg-white px-3 py-1.5 text-[11px] font-semibold text-amber-900 hover:bg-amber-100 dark:border-amber-800 dark:bg-zinc-900 dark:text-amber-100 dark:hover:bg-zinc-800"
Tb4b4b4>
Try auto-repair
Tb4b4b4<Tb4b4b4/Tff7b72buttonTb4b4b4>
Tb4b4b4<Tff7b72button
Te6edf3idTff7b72=Ta5d6ff"btn-emergency-mode"
Te6edf3typeTff7b72=Ta5d6ff"button"
Te6edf3classTff7b72=Ta5d6ff"rounded-lg border border-amber-300 bg-white px-3 py-1.5 text-[11px] font-semibold text-amber-900 hover:bg-amber-100 dark:border-amber-800 dark:bg-zinc-900 dark:text-amber-100 dark:hover:bg-zinc-800"
Tb4b4b4>
Emergency mode
Tb4b4b4<Tb4b4b4/Tff7b72buttonTb4b4b4>
Tb4b4b4<Tff7b72button
Te6edf3idTff7b72=Ta5d6ff"btn-open-backups"
Te6edf3typeTff7b72=Ta5d6ff"button"
Te6edf3classTff7b72=Ta5d6ff"rounded-lg border border-amber-300 bg-white px-3 py-1.5 text-[11px] font-semibold text-amber-900 hover:bg-amber-100 dark:border-amber-800 dark:bg-zinc-900 dark:text-amber-100 dark:hover:bg-zinc-800"
Tb4b4b4>
Open backups folder
Tb4b4b4<Tb4b4b4/Tff7b72buttonTb4b4b4>
Tb4b4b4<Tff7b72button
Te6edf3idTff7b72=Ta5d6ff"btn-copy-reset-guide"
Te6edf3typeTff7b72=Ta5d6ff"button"
Te6edf3classTff7b72=Ta5d6ff"rounded-lg border border-amber-300 bg-white px-3 py-1.5 text-[11px] font-semibold text-amber-900 hover:bg-amber-100 dark:border-amber-800 dark:bg-zinc-900 dark:text-amber-100 dark:hover:bg-zinc-800"
Tb4b4b4>
Copy reset instructions
Tb4b4b4<Tb4b4b4/Tff7b72buttonTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tff7b72p Te6edf3idTff7b72=Ta5d6ff"recovery-status" Te6edf3classTff7b72=Ta5d6ff"text-xs text-amber-900 dark:text-amber-200"Tb4b4b4>Tb4b4b4<Tb4b4b4/Tff7b72pTb4b4b4>
Tb4b4b4<Tff7b72details
Te6edf3classTff7b72=Ta5d6ff"rounded-lg border border-amber-200/70 bg-white/70 p-3 dark:border-amber-900/40 dark:bg-zinc-950/40"
Tb4b4b4>
Tb4b4b4<Tff7b72summary
Te6edf3classTff7b72=Ta5d6ff"cursor-pointer text-xs font-semibold text-amber-900 dark:text-amber-100"
Tb4b4b4>
Complete data removal guide
Tb4b4b4<Tb4b4b4/Tff7b72summaryTb4b4b4>
Tb4b4b4<Tff7b72pre
Te6edf3idTff7b72=Ta5d6ff"cleanup-guide"
Te6edf3classTff7b72=Ta5d6ff"mt-2 max-h-48 overflow-auto whitespace-pre-wrap text-[10px] leading-relaxed text-slate-700 dark:text-zinc-300"
Tb4b4b4>Tb4b4b4<Tb4b4b4/Tff7b72preTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72detailsTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3classTff7b72=Ta5d6ff"space-y-3"Tb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3classTff7b72=Ta5d6ff"flex flex-col sm:flex-row items-center justify-between gap-2 px-1"Tb4b4b4>
Tb4b4b4<Tff7b72h3
Te6edf3classTff7b72=Ta5d6ff"text-[10px] font-semibold uppercase tracking-wider text-slate-500 dark:text-zinc-400"
Tb4b4b4>
Diagnostic Logs
Tb4b4b4<Tb4b4b4/Tff7b72h3Tb4b4b4>
Tb4b4b4<Tff7b72button
Te6edf3onclickTff7b72=Ta5d6ff"copyLogs(event)"
Te6edf3classTff7b72=Ta5d6ff"w-full sm:w-auto text-[10px] font-medium text-blue-600 hover:text-blue-500 dark:text-blue-400 dark:hover:text-blue-300 bg-blue-50 dark:bg-blue-950/40 px-3 py-1 rounded-lg transition-colors"
Tb4b4b4>
Copy all logs
Tb4b4b4<Tb4b4b4/Tff7b72buttonTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3classTff7b72=Ta5d6ff"space-y-1"Tb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3classTff7b72=Ta5d6ff"text-[10px] font-medium text-slate-500 dark:text-zinc-400 px-1"Tb4b4b4>
Standard Output (stdout)
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3classTff7b72=Ta5d6ff"relative group"Tb4b4b4>
Tb4b4b4<Tff7b72pre
Te6edf3idTff7b72=Ta5d6ff"stdout"
Te6edf3classTff7b72=Ta5d6ff"h-52 overflow-auto rounded-xl border border-slate-200 bg-slate-50 p-3 font-mono text-[10px] text-slate-700 dark:border-zinc-700 dark:bg-zinc-950 dark:text-zinc-300 select-text"
Tb4b4b4>Tb4b4b4<Tb4b4b4/Tff7b72preTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3classTff7b72=Ta5d6ff"space-y-1"Tb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3classTff7b72=Ta5d6ff"text-[10px] font-medium text-slate-500 dark:text-zinc-400 px-1"Tb4b4b4>
Standard Error (stderr)
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3classTff7b72=Ta5d6ff"relative group"Tb4b4b4>
Tb4b4b4<Tff7b72pre
Te6edf3idTff7b72=Ta5d6ff"stderr"
Te6edf3classTff7b72=Ta5d6ff"h-64 overflow-auto rounded-xl border border-red-200/70 bg-red-50/60 p-3 font-mono text-[10px] text-red-700 dark:border-red-900/40 dark:bg-zinc-950 dark:text-red-400 select-text"
Tb4b4b4>Tb4b4b4<Tb4b4b4/Tff7b72preTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3classTff7b72=Ta5d6ff"flex flex-wrap items-center justify-center sm:justify-start gap-2 pt-2"Tb4b4b4>
Tb4b4b4<Tff7b72button
Te6edf3onclickTff7b72=Ta5d6ff"window.electron.relaunch()"
Te6edf3classTff7b72=Ta5d6ff"w-full sm:w-40 rounded-xl bg-blue-600 px-4 py-2.5 text-xs font-semibold text-white shadow-sm hover:bg-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 dark:focus:ring-offset-zinc-900 transition-colors"
Tb4b4b4>
Relaunch
Tb4b4b4<Tb4b4b4/Tff7b72buttonTb4b4b4>
Tb4b4b4<Tff7b72button
Te6edf3onclickTff7b72=Ta5d6ff"window.electron.shutdown()"
Te6edf3classTff7b72=Ta5d6ff"w-full sm:w-24 rounded-xl border border-slate-200 bg-white px-4 py-2.5 text-xs font-semibold text-slate-700 shadow-sm hover:bg-slate-50 dark:border-zinc-700 dark:bg-zinc-900 dark:text-zinc-300 dark:hover:bg-zinc-800 transition-colors"
Tb4b4b4>
Exit
Tb4b4b4<Tb4b4b4/Tff7b72buttonTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72mainTb4b4b4>
Tb4b4b4<Tff7b72scriptTb4b4b4>
T8b949e// Get data from URL parameters
Tff7b72const Te6edf3params Tff7b72= Tff7b72new Te6edf3URLSearchParamsTb4b4b4(Tffa657windowTb4b4b4.Te6edf3locationTb4b4b4.Te6edf3searchTb4b4b4)Tb4b4b4;
Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"exit-code"Tb4b4b4)Tb4b4b4.Te6edf3innerText Tff7b72= Te6edf3paramsTb4b4b4.Te6edf3getTb4b4b4(Ta5d6ff"code"Tb4b4b4) Tff7b72|| Ta5d6ff"Unknown"Tb4b4b4;
Tff7b72const Te6edf3savedLogPath Tff7b72= Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"saved-log-path"Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3logPath Tff7b72= Te6edf3paramsTb4b4b4.Te6edf3getTb4b4b4(Ta5d6ff"logPath"Tb4b4b4) Tff7b72|| Ta5d6ff""Tb4b4b4;
Tff7b72const Te6edf3crashReportPath Tff7b72= Te6edf3paramsTb4b4b4.Te6edf3getTb4b4b4(Ta5d6ff"crashReportPath"Tb4b4b4) Tff7b72|| Ta5d6ff""Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3savedLogPathTb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3parts Tff7b72= Tb4b4b4[Tb4b4b4]Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3logPathTb4b4b4) Tb4b4b4{
Te6edf3partsTb4b4b4.Te6edf3pushTb4b4b4(Ta5d6ff`Ta5d6ffmeshchatx.log: Tffd700${Te6edf3logPathTffd700}Ta5d6ff`Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tff7b72if Tb4b4b4(Te6edf3crashReportPathTb4b4b4) Tb4b4b4{
Te6edf3partsTb4b4b4.Te6edf3pushTb4b4b4(Ta5d6ff`Ta5d6fflast-backend-crash.json: Tffd700${Te6edf3crashReportPathTffd700}Ta5d6ff`Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Te6edf3savedLogPathTb4b4b4.Te6edf3textContent Tff7b72= Te6edf3partsTb4b4b4.Te6edf3joinTb4b4b4(Ta5d6ff" | "Tb4b4b4)Tb4b4b4;
Tb4b4b4}
T8b949e// Decoded from base64 to handle complex characters safely
Tff7b72try Tb4b4b4{
Tff7b72const Te6edf3stdoutBase64 Tff7b72= Te6edf3paramsTb4b4b4.Te6edf3getTb4b4b4(Ta5d6ff"stdout"Tb4b4b4) Tff7b72|| Ta5d6ff""Tb4b4b4;
Tff7b72const Te6edf3stderrBase64 Tff7b72= Te6edf3paramsTb4b4b4.Te6edf3getTb4b4b4(Ta5d6ff"stderr"Tb4b4b4) Tff7b72|| Ta5d6ff""Tb4b4b4;
Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"stdout"Tb4b4b4)Tb4b4b4.Te6edf3innerText Tff7b72= Te6edf3stdoutBase64 Tff7b72? Te6edf3atobTb4b4b4(Te6edf3stdoutBase64Tb4b4b4) Tff7b72: Ta5d6ff"No output recorded."Tb4b4b4;
Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"stderr"Tb4b4b4)Tb4b4b4.Te6edf3innerText Tff7b72= Te6edf3stderrBase64
Tff7b72? Te6edf3atobTb4b4b4(Te6edf3stderrBase64Tb4b4b4)
Tff7b72: Ta5d6ff"No error output recorded."Tb4b4b4;
Tb4b4b4} Tff7b72catch Tb4b4b4(Te6edf3eTb4b4b4) Tb4b4b4{
Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"stdout"Tb4b4b4)Tb4b4b4.Te6edf3innerText Tff7b72= Ta5d6ff"Error decoding logs."Tb4b4b4;
Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"stderr"Tb4b4b4)Tb4b4b4.Te6edf3innerText Tff7b72= Ta5d6ff"Error decoding logs."Tb4b4b4;
Tb4b4b4}
Tff7b72function Te6edf3copyLogsTb4b4b4(Te6edf3eventTb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3stdout Tff7b72= Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"stdout"Tb4b4b4)Tb4b4b4.Te6edf3innerTextTb4b4b4;
Tff7b72const Te6edf3stderr Tff7b72= Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"stderr"Tb4b4b4)Tb4b4b4.Te6edf3innerTextTb4b4b4;
Tff7b72const Te6edf3exitCode Tff7b72= Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"exit-code"Tb4b4b4)Tb4b4b4.Te6edf3innerTextTb4b4b4;
Tff7b72const Te6edf3fullReport Tff7b72= Ta5d6ff`Ta5d6ffMeshChatX Crash ReportTa5d6ff\nTa5d6ffExit Code: Tffd700${Te6edf3exitCodeTffd700}Ta5d6ff\nTa5d6ffLog file: Tffd700${Te6edf3logPathTffd700}Ta5d6ff\nTa5d6ffCrash report: Tffd700${Te6edf3crashReportPathTffd700}Ta5d6ff\nTa5d6ff\nTa5d6ff--- STDOUT ---Ta5d6ff\nTffd700${Te6edf3stdoutTffd700}Ta5d6ff\nTa5d6ff\nTa5d6ff--- STDERR ---Ta5d6ff\nTffd700${Te6edf3stderrTffd700}Ta5d6ff`Tb4b4b4;
Te6edf3navigatorTb4b4b4.Te6edf3clipboardTb4b4b4.Te6edf3writeTextTb4b4b4(Te6edf3fullReportTb4b4b4)Tb4b4b4.Te6edf3thenTb4b4b4(Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72const Te6edf3btn Tff7b72= Te6edf3event Tff7b72&& Te6edf3eventTb4b4b4.Te6edf3currentTarget Tff7b72? Te6edf3eventTb4b4b4.Te6edf3currentTarget Tff7b72: Tff7b72nullTb4b4b4;
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3btnTb4b4b4) Tb4b4b4{
Tff7b72returnTb4b4b4;
Tb4b4b4}
Tff7b72const Te6edf3originalText Tff7b72= Te6edf3btnTb4b4b4.Te6edf3innerTextTb4b4b4;
Te6edf3btnTb4b4b4.Te6edf3innerText Tff7b72= Ta5d6ff"Copied!"Tb4b4b4;
Te6edf3btnTb4b4b4.Te6edf3classListTb4b4b4.Te6edf3replaceTb4b4b4(Ta5d6ff"text-blue-600"Tb4b4b4, Ta5d6ff"text-emerald-600"Tb4b4b4)Tb4b4b4;
Te6edf3btnTb4b4b4.Te6edf3classListTb4b4b4.Te6edf3replaceTb4b4b4(Ta5d6ff"dark:text-blue-400"Tb4b4b4, Ta5d6ff"dark:text-emerald-400"Tb4b4b4)Tb4b4b4;
Te6edf3setTimeoutTb4b4b4(Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Te6edf3btnTb4b4b4.Te6edf3innerText Tff7b72= Te6edf3originalTextTb4b4b4;
Te6edf3btnTb4b4b4.Te6edf3classListTb4b4b4.Te6edf3replaceTb4b4b4(Ta5d6ff"text-emerald-600"Tb4b4b4, Ta5d6ff"text-blue-600"Tb4b4b4)Tb4b4b4;
Te6edf3btnTb4b4b4.Te6edf3classListTb4b4b4.Te6edf3replaceTb4b4b4(Ta5d6ff"dark:text-emerald-400"Tb4b4b4, Ta5d6ff"dark:text-blue-400"Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4, T79c0ff2000Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tff7b72function Te6edf3detectPreferredThemeTb4b4b4(Tb4b4b4) Tb4b4b4{
Tff7b72try Tb4b4b4{
Tff7b72const Te6edf3storedTheme Tff7b72=
Te6edf3localStorageTb4b4b4.Te6edf3getItemTb4b4b4(Ta5d6ff"meshchat.theme"Tb4b4b4) Tff7b72|| Te6edf3localStorageTb4b4b4.Te6edf3getItemTb4b4b4(Ta5d6ff"meshchatx.theme"Tb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3storedTheme Tff7b72=== Ta5d6ff"dark" Tff7b72|| Te6edf3storedTheme Tff7b72=== Ta5d6ff"light"Tb4b4b4) Tb4b4b4{
Tff7b72return Te6edf3storedThemeTb4b4b4;
Tb4b4b4}
Tb4b4b4} Tff7b72catch Tb4b4b4(Te6edf3eTb4b4b4) Tb4b4b4{Tb4b4b4}
Tff7b72return Tffa657windowTb4b4b4.Te6edf3matchMedia Tff7b72&& Tffa657windowTb4b4b4.Te6edf3matchMediaTb4b4b4(Ta5d6ff"(prefers-color-scheme: dark)"Tb4b4b4)Tb4b4b4.Te6edf3matches
Tff7b72? Ta5d6ff"dark"
Tff7b72: Ta5d6ff"light"Tb4b4b4;
Tb4b4b4}
Tff7b72function Te6edf3applyThemeTb4b4b4(Te6edf3themeTb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3isDark Tff7b72= Te6edf3theme Tff7b72=== Ta5d6ff"dark"Tb4b4b4;
Tffa657documentTb4b4b4.Te6edf3documentElementTb4b4b4.Te6edf3classListTb4b4b4.Te6edf3toggleTb4b4b4(Ta5d6ff"dark"Tb4b4b4, Te6edf3isDarkTb4b4b4)Tb4b4b4;
Tb4b4b4}
Tff7b72function Te6edf3setRecoveryStatusTb4b4b4(Te6edf3messageTb4b4b4, Te6edf3isError Tff7b72= Tff7b72falseTb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3el Tff7b72= Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"recovery-status"Tb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3elTb4b4b4) Tb4b4b4{
Tff7b72returnTb4b4b4;
Tb4b4b4}
Te6edf3elTb4b4b4.Te6edf3textContent Tff7b72= Te6edf3message Tff7b72|| Ta5d6ff""Tb4b4b4;
Te6edf3elTb4b4b4.Te6edf3classListTb4b4b4.Te6edf3toggleTb4b4b4(Ta5d6ff"text-red-700"Tb4b4b4, Te6edf3isErrorTb4b4b4)Tb4b4b4;
Te6edf3elTb4b4b4.Te6edf3classListTb4b4b4.Te6edf3toggleTb4b4b4(Ta5d6ff"dark:text-red-300"Tb4b4b4, Te6edf3isErrorTb4b4b4)Tb4b4b4;
Tb4b4b4}
Tff7b72function Te6edf3formatBytesTb4b4b4(Te6edf3sizeTb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Tff7b72!Tffa657NumberTb4b4b4.Tffa657isFiniteTb4b4b4(Te6edf3sizeTb4b4b4) Tff7b72|| Te6edf3size Tff7b72<= T79c0ff0Tb4b4b4) Tb4b4b4{
Tff7b72return Ta5d6ff"0 B"Tb4b4b4;
Tb4b4b4}
Tff7b72const Te6edf3units Tff7b72= Tb4b4b4[Ta5d6ff"B"Tb4b4b4, Ta5d6ff"KB"Tb4b4b4, Ta5d6ff"MB"Tb4b4b4, Ta5d6ff"GB"Tb4b4b4]Tb4b4b4;
Tff7b72let Te6edf3value Tff7b72= Te6edf3sizeTb4b4b4;
Tff7b72let Te6edf3unit Tff7b72= T79c0ff0Tb4b4b4;
Tff7b72while Tb4b4b4(Te6edf3value Tff7b72>= T79c0ff1024 Tff7b72&& Te6edf3unit Tff7b72< Te6edf3unitsTb4b4b4.Te6edf3length Tff7b72- T79c0ff1Tb4b4b4) Tb4b4b4{
Te6edf3value Tff7b72/= T79c0ff1024Tb4b4b4;
Te6edf3unit Tff7b72+= T79c0ff1Tb4b4b4;
Tb4b4b4}
Tff7b72return Ta5d6ff`Tffd700${Te6edf3valueTb4b4b4.Te6edf3toFixedTb4b4b4(Te6edf3unit Tff7b72=== T79c0ff0 Tff7b72? T79c0ff0 Tff7b72: T79c0ff1Tb4b4b4)Tffd700}Ta5d6ff Tffd700${Te6edf3unitsTb4b4b4[Te6edf3unitTb4b4b4]Tffd700}Ta5d6ff`Tb4b4b4;
Tb4b4b4}
Tff7b72function Te6edf3renderBackupListTb4b4b4(Te6edf3backupsTb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3list Tff7b72= Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"backup-list"Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3restoreLatest Tff7b72= Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"btn-restore-latest"Tb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3list Tff7b72|| Tff7b72!Te6edf3restoreLatestTb4b4b4) Tb4b4b4{
Tff7b72returnTb4b4b4;
Tb4b4b4}
Te6edf3listTb4b4b4.Te6edf3innerHTML Tff7b72= Ta5d6ff""Tb4b4b4;
Tff7b72if Tb4b4b4(Tff7b72!Tffa657ArrayTb4b4b4.Te6edf3isArrayTb4b4b4(Te6edf3backupsTb4b4b4) Tff7b72|| Te6edf3backupsTb4b4b4.Te6edf3length Tff7b72=== T79c0ff0Tb4b4b4) Tb4b4b4{
Te6edf3listTb4b4b4.Te6edf3innerHTML Tff7b72=
Ta5d6ff'<p class="text-xs text-amber-900 dark:text-amber-200">No automatic backups were found in database-backups/ or snapshots/.</p>'Tb4b4b4;
Te6edf3restoreLatestTb4b4b4.Te6edf3disabled Tff7b72= Tff7b72trueTb4b4b4;
Tff7b72returnTb4b4b4;
Tb4b4b4}
Te6edf3restoreLatestTb4b4b4.Te6edf3disabled Tff7b72= Tff7b72falseTb4b4b4;
Tff7b72const Te6edf3preview Tff7b72= Te6edf3backupsTb4b4b4.Te6edf3sliceTb4b4b4(T79c0ff0Tb4b4b4, T79c0ff5Tb4b4b4)Tb4b4b4;
Tff7b72for Tb4b4b4(Tff7b72const Te6edf3entry Tff7b72of Te6edf3previewTb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3row Tff7b72= Tffa657documentTb4b4b4.Te6edf3createElementTb4b4b4(Ta5d6ff"div"Tb4b4b4)Tb4b4b4;
Te6edf3rowTb4b4b4.Te6edf3className Tff7b72=
Ta5d6ff"rounded-lg border border-amber-200/70 bg-white/80 px-3 py-2 text-[11px] text-amber-950 dark:border-amber-900/40 dark:bg-zinc-950/50 dark:text-amber-100"Tb4b4b4;
Tff7b72const Te6edf3label Tff7b72= Te6edf3entryTb4b4b4.Te6edf3suspicious Tff7b72? Ta5d6ff`Tffd700${Te6edf3entryTb4b4b4.Te6edf3nameTffd700}Ta5d6ff (suspicious)Ta5d6ff` Tff7b72: Te6edf3entryTb4b4b4.Te6edf3nameTb4b4b4;
Te6edf3rowTb4b4b4.Te6edf3textContent Tff7b72= Ta5d6ff`Tffd700${Te6edf3labelTffd700}Ta5d6ff - Tffd700${Te6edf3formatBytesTb4b4b4(Te6edf3entryTb4b4b4.Te6edf3sizeTb4b4b4)Tffd700}Ta5d6ff - Tffd700${Te6edf3entryTb4b4b4.Te6edf3kindTffd700}Ta5d6ff`Tb4b4b4;
Te6edf3listTb4b4b4.Te6edf3appendChildTb4b4b4(Te6edf3rowTb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4}
Tff7b72async Tff7b72function Te6edf3restoreBackupPathTb4b4b4(Te6edf3backupPathTb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Tff7b72!Tffa657windowTb4b4b4.Te6edf3electronTff7b72?Tb4b4b4.Te6edf3restoreDatabaseBackupTb4b4b4) Tb4b4b4{
Te6edf3setRecoveryStatusTb4b4b4(Ta5d6ff"Restore is only available in the desktop app."Tb4b4b4, Tff7b72trueTb4b4b4)Tb4b4b4;
Tff7b72returnTb4b4b4;
Tb4b4b4}
Te6edf3setRecoveryStatusTb4b4b4(Ta5d6ff"Restoring database backup. This can take a minute..."Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3result Tff7b72= Tff7b72await Tffa657windowTb4b4b4.Te6edf3electronTb4b4b4.Te6edf3restoreDatabaseBackupTb4b4b4(Te6edf3backupPathTb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3resultTff7b72?Tb4b4b4.Te6edf3okTb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3detail Tff7b72= Te6edf3resultTff7b72?Tb4b4b4.Te6edf3stderr Tff7b72|| Te6edf3resultTff7b72?Tb4b4b4.Te6edf3error Tff7b72|| Ta5d6ff"Restore failed."Tb4b4b4;
Te6edf3setRecoveryStatusTb4b4b4(Te6edf3detailTb4b4b4, Tff7b72trueTb4b4b4)Tb4b4b4;
Tff7b72returnTb4b4b4;
Tb4b4b4}
Te6edf3setRecoveryStatusTb4b4b4(Ta5d6ff"Database restored. Relaunching..."Tb4b4b4)Tb4b4b4;
Te6edf3setTimeoutTb4b4b4(Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tffa657windowTb4b4b4.Te6edf3electronTb4b4b4.Te6edf3relaunchTb4b4b4(Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4, T79c0ff800Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tff7b72async Tff7b72function Te6edf3initRecoveryPanelTb4b4b4(Tb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Tff7b72!Tffa657windowTb4b4b4.Te6edf3electronTff7b72?Tb4b4b4.Te6edf3getCrashRecoveryInfoTb4b4b4) Tb4b4b4{
Tff7b72returnTb4b4b4;
Tb4b4b4}
Tff7b72const Te6edf3info Tff7b72= Tff7b72await Tffa657windowTb4b4b4.Te6edf3electronTb4b4b4.Te6edf3getCrashRecoveryInfoTb4b4b4(Tb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3infoTb4b4b4) Tb4b4b4{
Tff7b72returnTb4b4b4;
Tb4b4b4}
Tff7b72const Te6edf3panel Tff7b72= Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"recovery-panel"Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3summary Tff7b72= Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"recovery-summary"Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3hints Tff7b72= Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"recovery-hints"Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3cleanupGuide Tff7b72= Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"cleanup-guide"Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3restoreLatest Tff7b72= Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"btn-restore-latest"Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3restorePicked Tff7b72= Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"btn-restore-picked"Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3autoRepair Tff7b72= Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"btn-auto-repair"Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3emergencyMode Tff7b72= Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"btn-emergency-mode"Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3openBackups Tff7b72= Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"btn-open-backups"Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3copyResetGuide Tff7b72= Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"btn-copy-reset-guide"Tb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3cleanupGuide Tff7b72&& Te6edf3infoTb4b4b4.Te6edf3cleanupGuideTb4b4b4) Tb4b4b4{
Te6edf3cleanupGuideTb4b4b4.Te6edf3textContent Tff7b72= Te6edf3infoTb4b4b4.Te6edf3cleanupGuideTb4b4b4;
Tb4b4b4}
Tff7b72const Te6edf3diagnosis Tff7b72= Te6edf3infoTb4b4b4.Te6edf3diagnosis Tff7b72|| Tb4b4b4{Tb4b4b4}Tb4b4b4;
Tff7b72const Te6edf3showRecovery Tff7b72=
Te6edf3diagnosisTb4b4b4.Te6edf3category Tff7b72=== Ta5d6ff"database" Tff7b72||
Te6edf3diagnosisTb4b4b4.Te6edf3category Tff7b72=== Ta5d6ff"python-crash" Tff7b72||
Tb4b4b4(Tffa657ArrayTb4b4b4.Te6edf3isArrayTb4b4b4(Te6edf3infoTb4b4b4.Te6edf3backupsTb4b4b4) Tff7b72&& Te6edf3infoTb4b4b4.Te6edf3backupsTb4b4b4.Te6edf3length Tff7b72> T79c0ff0Tb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3panel Tff7b72|| Tff7b72!Te6edf3showRecoveryTb4b4b4) Tb4b4b4{
Tff7b72returnTb4b4b4;
Tb4b4b4}
Te6edf3panelTb4b4b4.Te6edf3classListTb4b4b4.Te6edf3removeTb4b4b4(Ta5d6ff"hidden"Tb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3summaryTb4b4b4) Tb4b4b4{
Te6edf3summaryTb4b4b4.Te6edf3textContent Tff7b72= Te6edf3diagnosisTb4b4b4.Te6edf3summary Tff7b72|| Ta5d6ff"The backend failed during startup."Tb4b4b4;
Tb4b4b4}
Tff7b72if Tb4b4b4(Te6edf3hintsTb4b4b4) Tb4b4b4{
Te6edf3hintsTb4b4b4.Te6edf3innerHTML Tff7b72= Ta5d6ff""Tb4b4b4;
Tff7b72for Tb4b4b4(Tff7b72const Te6edf3hint Tff7b72of Te6edf3diagnosisTb4b4b4.Te6edf3hints Tff7b72|| Tb4b4b4[Tb4b4b4]Tb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3item Tff7b72= Tffa657documentTb4b4b4.Te6edf3createElementTb4b4b4(Ta5d6ff"li"Tb4b4b4)Tb4b4b4;
Te6edf3itemTb4b4b4.Te6edf3textContent Tff7b72= Te6edf3hintTb4b4b4;
Te6edf3hintsTb4b4b4.Te6edf3appendChildTb4b4b4(Te6edf3itemTb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4}
Te6edf3renderBackupListTb4b4b4(Te6edf3infoTb4b4b4.Te6edf3backups Tff7b72|| Tb4b4b4[Tb4b4b4]Tb4b4b4)Tb4b4b4;
Tff7b72let Te6edf3preferredBackup Tff7b72= Te6edf3infoTb4b4b4.Te6edf3preferredBackup Tff7b72|| Tff7b72nullTb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3restoreLatestTb4b4b4) Tb4b4b4{
Te6edf3restoreLatestTb4b4b4.Te6edf3addEventListenerTb4b4b4(Ta5d6ff"click"Tb4b4b4, Tff7b72async Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3preferredBackupTff7b72?Tb4b4b4.Te6edf3pathTb4b4b4) Tb4b4b4{
Te6edf3setRecoveryStatusTb4b4b4(Ta5d6ff"No backup is available to restore."Tb4b4b4, Tff7b72trueTb4b4b4)Tb4b4b4;
Tff7b72returnTb4b4b4;
Tb4b4b4}
Tff7b72await Te6edf3restoreBackupPathTb4b4b4(Te6edf3preferredBackupTb4b4b4.Te6edf3pathTb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tff7b72if Tb4b4b4(Te6edf3restorePickedTb4b4b4) Tb4b4b4{
Te6edf3restorePickedTb4b4b4.Te6edf3addEventListenerTb4b4b4(Ta5d6ff"click"Tb4b4b4, Tff7b72async Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72const Te6edf3picked Tff7b72= Tff7b72await Tffa657windowTb4b4b4.Te6edf3electronTb4b4b4.Te6edf3pickDatabaseBackupTb4b4b4(Tb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3pickedTb4b4b4) Tb4b4b4{
Tff7b72returnTb4b4b4;
Tb4b4b4}
Tff7b72await Te6edf3restoreBackupPathTb4b4b4(Te6edf3pickedTb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tff7b72if Tb4b4b4(Te6edf3autoRepairTb4b4b4) Tb4b4b4{
Te6edf3autoRepairTb4b4b4.Te6edf3addEventListenerTb4b4b4(Ta5d6ff"click"Tb4b4b4, Tff7b72async Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72if Tb4b4b4(Tff7b72!Tffa657windowTb4b4b4.Te6edf3electronTff7b72?Tb4b4b4.Te6edf3relaunchAutoRecoverTb4b4b4) Tb4b4b4{
Tff7b72returnTb4b4b4;
Tb4b4b4}
Te6edf3setRecoveryStatusTb4b4b4(Ta5d6ff"Relaunching with auto-repair enabled..."Tb4b4b4)Tb4b4b4;
Tff7b72await Tffa657windowTb4b4b4.Te6edf3electronTb4b4b4.Te6edf3relaunchAutoRecoverTb4b4b4(Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tff7b72if Tb4b4b4(Te6edf3emergencyModeTb4b4b4) Tb4b4b4{
Te6edf3emergencyModeTb4b4b4.Te6edf3addEventListenerTb4b4b4(Ta5d6ff"click"Tb4b4b4, Tff7b72async Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72if Tb4b4b4(Tff7b72!Tffa657windowTb4b4b4.Te6edf3electronTff7b72?Tb4b4b4.Te6edf3relaunchEmergencyTb4b4b4) Tb4b4b4{
Tff7b72returnTb4b4b4;
Tb4b4b4}
Te6edf3setRecoveryStatusTb4b4b4(Ta5d6ff"Relaunching in emergency mode..."Tb4b4b4)Tb4b4b4;
Tff7b72await Tffa657windowTb4b4b4.Te6edf3electronTb4b4b4.Te6edf3relaunchEmergencyTb4b4b4(Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tff7b72if Tb4b4b4(Te6edf3openBackups Tff7b72&& Te6edf3infoTb4b4b4.Te6edf3pathsTff7b72?Tb4b4b4.Te6edf3backupsDirTb4b4b4) Tb4b4b4{
Te6edf3openBackupsTb4b4b4.Te6edf3addEventListenerTb4b4b4(Ta5d6ff"click"Tb4b4b4, Tff7b72async Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72if Tb4b4b4(Tffa657windowTb4b4b4.Te6edf3electronTff7b72?Tb4b4b4.Te6edf3openPathTb4b4b4) Tb4b4b4{
Tff7b72await Tffa657windowTb4b4b4.Te6edf3electronTb4b4b4.Te6edf3openPathTb4b4b4(Te6edf3infoTb4b4b4.Te6edf3pathsTb4b4b4.Te6edf3backupsDirTb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tff7b72if Tb4b4b4(Te6edf3copyResetGuideTb4b4b4) Tb4b4b4{
Te6edf3copyResetGuideTb4b4b4.Te6edf3addEventListenerTb4b4b4(Ta5d6ff"click"Tb4b4b4, Tff7b72async Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3infoTb4b4b4.Te6edf3cleanupGuideTb4b4b4) Tb4b4b4{
Tff7b72returnTb4b4b4;
Tb4b4b4}
Tff7b72await Te6edf3navigatorTb4b4b4.Te6edf3clipboardTb4b4b4.Te6edf3writeTextTb4b4b4(Te6edf3infoTb4b4b4.Te6edf3cleanupGuideTb4b4b4)Tb4b4b4;
Te6edf3setRecoveryStatusTb4b4b4(Ta5d6ff"Reset instructions copied to clipboard."Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4}
Te6edf3applyThemeTb4b4b4(Te6edf3detectPreferredThemeTb4b4b4(Tb4b4b4)Tb4b4b4)Tb4b4b4;
Te6edf3initRecoveryPanelTb4b4b4(Tb4b4b4)Tb4b4b4;
Tb4b4b4<Tb4b4b4/Tff7b72scriptTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72bodyTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72htmlTb4b4b4>
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────